#include "Bullet3Collision/NarrowPhaseCollision/shared/b3Collidable.h"
#ifdef __cplusplus
extern "C" {
#endif
b3GpuChildShape* bullet_Newb3GpuChildShape(){
	b3GpuChildShape* wrap_out = new b3GpuChildShape();
	return wrap_out;
}

b3Quaternion* bullet_b3GpuChildShape_GetFieldOfM_childOrientation(b3GpuChildShape* c_this){
	return (b3Quaternion*)(&c_this->m_childOrientation);
}

b3Vector3* bullet_b3GpuChildShape_GetFieldOfM_childPosition(b3GpuChildShape* c_this){
	return (b3Vector3*)(&c_this->m_childPosition);
}

int bullet_b3GpuChildShape_GetFieldOfM_shapeType(b3GpuChildShape* c_this){
	return (int)(c_this->m_shapeType);
}

b3CompoundOverlappingPair* bullet_Newb3CompoundOverlappingPair(){
	b3CompoundOverlappingPair* wrap_out = new b3CompoundOverlappingPair();
	return wrap_out;
}

int bullet_b3CompoundOverlappingPair_GetFieldOfM_bodyIndexA(b3CompoundOverlappingPair* c_this){
	return (int)(c_this->m_bodyIndexA);
}

int bullet_b3CompoundOverlappingPair_GetFieldOfM_bodyIndexB(b3CompoundOverlappingPair* c_this){
	return (int)(c_this->m_bodyIndexB);
}

int bullet_b3CompoundOverlappingPair_GetFieldOfM_childShapeIndexA(b3CompoundOverlappingPair* c_this){
	return (int)(c_this->m_childShapeIndexA);
}

int bullet_b3CompoundOverlappingPair_GetFieldOfM_childShapeIndexB(b3CompoundOverlappingPair* c_this){
	return (int)(c_this->m_childShapeIndexB);
}

b3Collidable* bullet_Newb3Collidable(){
	b3Collidable* wrap_out = new b3Collidable();
	return wrap_out;
}

int bullet_b3Collidable_GetFieldOfM_shapeType(b3Collidable* c_this){
	return (int)(c_this->m_shapeType);
}

#ifdef __cplusplus
}
#endif
